package cn.shop.merchant.mapper.user;

import cn.shop.merchant.mapper.IBaseMapper;
import cn.shop.merchant.model.user.AdminMenuVO;
import cn.shop.merchant.model.user.MerchantPermission;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

/**
 * @author : 李一涵
 * @date : Created in 2021-11-11 13:33
 * @description :
 */
@Mapper
public interface MerchantPermissionMapper extends IBaseMapper<MerchantPermission> {

	/**
	 * 通过用户id移除 用户和角色之间的关系
	 *
	 * @param roleId 用户id
	 * @param uid    商户编号
	 * @return 影响条数
	 */
	int removePermissionByRoleId(Long roleId, Long uid);

	/**
	 * 分配角色
	 *
	 * @param collect 集合
	 * @return 影响条数
	 */
	int assignPermission(List<Map<String, Object>> collect);

	/**
	 * 查询用户的权限
	 *
	 * @param userId 用户id
	 * @return 用户权限
	 */
	List<AdminMenuVO> allPermissionByUserId(long userId);

}
